package org.libra.ui.interfaces {
	import flash.display.DisplayObject;
	import org.libra.geom.IntDimension;
	
	/**
	 * 滚动条接口
	 * @see org.libra.ui.BasicScrollPanelState
	 * @author zhangzuoqiang
	 */
	public interface IScrollPanelState {
		
		/**
		 * 获取向上按钮的鼠标状态
		 * @return
		 */
		function getUpArrowState():IButtonState;
		
		/**
		 * 获取向下按钮的鼠标状态
		 * @return
		 */
		function getDownArrowState():IButtonState;
		
		/**
		 * 获取活动条的鼠标状态
		 * @return
		 */
		function getThumbState():IButtonState;
		
		/**
		 * 转到正常状态
		 */
		function changeToNormal():void;
		
		/**
		 * 转到鼠标进入状态
		 */
		function changeToOver():void;
		
		/**
		 * 向上、向下按钮、活动条和scrollpanel都转到正常状态
		 */
		function changeToAllNormal():void;
		
		/**
		 * 获取状态
		 * @return
		 */
		function getDisplayObject():DisplayObject;
		
		/**
		 * 更新大小
		 * @param	size
		 */
		function update(size:IntDimension):void;
		
		/**
		 * 销毁
		 */
		function dispose():void;
		
	}
	
}